﻿#region Version Info
/* ========================================================================
* 【本类功能概述】
* 
* 作者：李荣楠
* 时间：2013-11-18 14:48:17
* 文件名：DataType
* .net版本：4.0 
* ========================================================================
*/
#endregion
using System.Data;

namespace LCL.Entity
{
    /// <summary>
    /// System.Int64.64 位带符号整数。
    /// </summary>
    public class BigInt : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.BigInt;
                data = value;
            }
        }
    }
    /// <summary>
    ///  System.Byte 类型的 System.Array。二进制数据的固定长度流，范围在 1 到 8,000 个字节之间。
    /// </summary>
    public class Binary : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Binary;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Boolean.无符号数值，可以是 0、1 或 null。
    /// </summary>
    public class Bit : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Bit;
                data = value;
            }
        }
    }
    /// <summary>
    ///System.String.非 Unicode 字符的固定长度流，范围在 1 到 8,000 个字符之间。
    /// </summary>
    public class Char : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Char;
                data = value;
            }
        }
    }
    /// <summary>
    /// 日期数据，值范围从公元 1 年 1 月 1 日到公元 9999 年 12 月 31 日。
    /// </summary>
    public class Date : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Date;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.DateTime.日期和时间数据，值范围从 1753 年 1 月 1 日到 9999 年 12 月 31 日，精度为 3.33 毫秒。
    /// </summary>
    public class DateTime : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.DateTime;
                data = value;
            }
        }
    }
    /// <summary>
    /// 日期和时间数据。日期值范围从公元 1 年 1 月 1 日到公元 9999 年 12 月 31 日。时间值范围从 00:00:00 到 23:59:59.9999999，精度为100 毫微秒。
    /// </summary>
    public class DateTime2 : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.DateTime2;
                data = value;
            }
        }
    }
    /// <summary>
    /// 显示时区的日期和时间数据。日期值范围从公元 1 年 1 月 1 日到公元 9999 年 12 月 31 日。时间值范围从 00:00:00 到 23:59:59.9999999，精度为
    /// 100 毫微秒。时区值范围从 -14:00 到 +14:00。
    /// </summary>
    public class DateTimeOffset : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.DateTimeOffset;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Decimal.固定精度和小数位数数值，在 -10 38 -1 和 10 38 -1 之间。
    /// </summary>
    public class Decimal : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Decimal;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Double.-1.79E +308 到 1.79E +308 范围内的浮点数。
    /// </summary>
    public class Float : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Float;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Byte 类型的 System.Array。二进制数据的可变长度流，范围在 0 到 2 31 -1（即 2,147,483,647）字节之间。
    /// </summary>
    public class Image : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Image;
                data = value;
            }
        }
    }
    /// <summary>
    ///  System.Int32.32 位带符号整数。
    /// </summary>
    public class Int : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Int;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Decimal.货币值，范围在 -2 63（即 -922,337,203,685,477.5808）到 2 63 -1（即 +922,337,203,685,477.5807）之间，精度为千分之十个货币单位。
    /// </summary>
    public class Money : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Money;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.String.Unicode 字符的固定长度流，范围在 1 到 4,000 个字符之间。
    /// </summary>
    public class NChar : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.NChar;
                data = value;
            }
        }
    }
    /// <summary>
    ///  System.String.Unicode 数据的可变长度流，最大长度为 2 30 - 1（即 1,073,741,823）个字符。
    /// </summary>
    public class NText : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.NText;
                data = value;
            }
        }
    }
    /// <summary>
    ///  System.String.Unicode 字符的可变长度流，范围在 1 到 4,000 个字符之间。如果字符串大于 4,000 个字符，隐式转换会失败。在使用比4,000 个字符更长的字符串时，请显式设置对象。
    /// </summary>
    public class NVarChar : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.NVarChar;
                data = value;
            }
        }
    }
    /// <summary>
    ///  System.Single.-3.40E +38 到 3.40E +38 范围内的浮点数。
    /// </summary>
    public class Real : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Real;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.DateTime.日期和时间数据，值范围从 1900 年 1 月 1 日到 2079 年 6 月 6 日，精度为 1 分钟。
    /// </summary>
    public class SmallDateTime : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.SmallDateTime;
                data = value;
            }
        }
    }
    /// <summary>
    ///  System.Int16.16 位的带符号整数。
    /// </summary>
    public class SmallInt : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.SmallInt;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Decimal.货币值，范围在 -214,748.3648 到 +214,748.3647 之间，精度为千分之十个货币单位。
    /// </summary>
    public class SmallMoney : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.SmallMoney;
                data = value;
            }
        }
    }
    /// <summary>
    /// 指定表值参数中包含的构造数据的特殊数据类型。
    /// </summary>
    public class Structured : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Structured;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.String.非 Unicode 数据的可变长度流，最大长度为 2 31 -1（即 2,147,483,647）个字符。
    /// </summary>
    public class Text : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Text;
                data = value;
            }
        }
    }
    /// <summary>
    ///  基于 24 小时制的时间数据。时间值范围从 00:00:00 到 23:59:59.9999999，精度为 100 毫微秒。对应于 SQL Servertime 值。
    /// </summary>
    public class Time : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Time;
                data = value;
            }
        }
    }
    /// <summary>
    ///   System.Byte 类型的 System.Array。自动生成的二进制数字，它们保证在数据库中是唯一的。timestamp 通常用作为表行添加版本戳的机制。存储大小为8 字节。
    /// </summary>
    public class Timestamp : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Timestamp;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Byte.8 位无符号整数。
    /// </summary>
    public class TinyInt : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.TinyInt;
                data = value;
            }
        }
    }
    /// <summary>
    /// SQL Server 2005 用户定义的类型 (UDT)。
    /// </summary>
    public class Udt : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Udt;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Guid.全局唯一标识符（或 GUID）。
    /// </summary>
    public class UniqueIdentifier : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.UniqueIdentifier;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Byte 类型的 System.Array。二进制数据的可变长度流，范围在 1 到 8,000 个字节之间。如果字节数组大于 8,000
    /// 个字节，隐式转换会失败。在使用比 8,000 个字节大的字节数组时，请显式设置对象。
    /// </summary>
    public class VarBinary : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.VarBinary;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.String.非 Unicode 字符的可变长度流，范围在 1 到 8,000 个字符之间。
    /// </summary>
    public class VarChar : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.VarChar;
                data = value;
            }
        }
    }
    /// <summary>
    /// System.Object.特殊数据类型，可以包含数值、字符串、二进制或日期数据，以及 SQL Server 值 Empty 和 Null，后两个值在未声明其他类型的情况下采用。
    /// </summary>
    public class Variant : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Variant;
                data = value;
            }
        }
    }
    /// <summary>
    ///  XML 值。使用 System.Data.SqlClient.SqlDataReader.GetValue(System.Int32) 方法或 System.Data.SqlTypes.SqlXml.Value
    ///  属性获取字符串形式的 XML，或通过调用 System.Data.SqlTypes.SqlXml.CreateReader() 方法获取 System.Xml.XmlReader
    ///  形式的 XML。
    /// </summary>
    public class Xml : BaseEntityFeild
    {
        /// <summary>
        /// 数据
        /// </summary>
        public new object Data
        {
            get { return data; }
            set
            {
                dataType = SqlDbType.Xml;
                data = value;
            }
        }
    }
}
